<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class participantemodel extends CI_Model
{   public function adicionarParticipante($dados = NULL)
    {   if($dados != NULL){
            $this->db->insert('PARTICIPANTE',$dados);       
            $this->session->set_flashdata('cadastrook',"PARTICIPANTE CADASTRADO COM SUCESSO !!!");
            redirect('principalcontroller/inscricao');
        }     
    }
    
    public function buscaDadosPessoais($id)
    {   $this->db->where('id_participante',$id);
        return $this->db->get('PARTICIPANTE');        
    }
    public function buscaTodosParticipantes()
    {   $this->db->where('status_participante','P');
        $this->db->order_by('nome','ASC');
        return $this->db->get('PARTICIPANTE');        
    }
    public function buscaTodosParticipantesAtivos()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('INSCRICAO', 'PARTICIPANTE.id_participante = INSCRICAO.id_participante');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('INSCRICAO.situacao_inscricao',2);    
        $this->db->order_by('PARTICIPANTE.nome','ASC');
        return $this->db->get();        
    }
    public function buscaTodosParticipantesConfirmado()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('INSCRICAO', 'PARTICIPANTE.id_participante = INSCRICAO.id_participante');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('INSCRICAO.situacao_inscricao',2);    
        $this->db->where('PARTICIPANTE.liberado','S');    
        $this->db->order_by('PARTICIPANTE.nome','ASC');
        return $this->db->get();        
    }
    public function buscaTodosParticipantesInativos()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('INSCRICAO', 'PARTICIPANTE.id_participante = INSCRICAO.id_participante');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('INSCRICAO.situacao_inscricao',1);    
        $this->db->order_by('PARTICIPANTE.nome','ASC');
        return $this->db->get();        
    }
    public function buscaTodosParticipantesAtivosIncompleto()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('INSCRICAO', 'PARTICIPANTE.id_participante = INSCRICAO.id_participante');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('INSCRICAO.situacao_inscricao',2);    
        $this->db->where('INSCRICAO.valor',20);    
        $this->db->order_by('PARTICIPANTE.nome','ASC');
        return $this->db->get();        
    }
    public function buscaTodosParticipantesPublicacao()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('PUBLICACAO', 'PARTICIPANTE.id_participante = PUBLICACAO.id_participante');
        //$this->db->join('COAUTOR', 'PUBLICACAO.id_publicacao = COAUTOR.publicacao');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('PUBLICACAO.situacao_pagamento',2);    
        $this->db->where('PUBLICACAO.situacao_publicacao',1);    
          
        //$this->db->order_by('PUBLICACAO.nome','ASC');
        return $this->db->get();        
    }
    public function buscaParticipanteComPublicacao($idParticipante)
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('PUBLICACAO', 'PARTICIPANTE.id_participante = PUBLICACAO.id_participante');
        $this->db->where('PARTICIPANTE.status_participante','P');
        $this->db->where('PUBLICACAO.situacao_pagamento',2);    
        $this->db->where('PUBLICACAO.situacao_publicacao',1);    
        $this->db->where('PUBLICACAO.id_participante',$idParticipante); 
        return $this->db->get(); 
    }
    public function buscarParticipantePublicacao($idParticipante)
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('COAUTOR', 'PARTICIPANTE.id_participante = COAUTOR.participante');
        //$this->db->join('PUBLICACAO', 'COAUTOR.publicacao = PUBLICACAO.id_publicacao');
        //$this->db->where('PUBLICACAO.situacao_pagamento',2);    
        //$this->db->where('PUBLICACAO.situacao_publicacao',1);    
        $this->db->where('COAUTOR.participante',$idParticipante);
        return $this->db->get();
    }
   

    public function buscaTodosParticipantesCoautor($idPublicacao)
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE');
        $this->db->join('COAUTOR', 'PARTICIPANTE.id_participante = COAUTOR.participante');
        //$this->db->join('PARTICIPANTE', 'PUBLICACAO.id_participante = PARTICIPANTE.id_participante');
        //$this->db->where('PARTICIPANTE.status_participante','P');
        //$this->db->where('PUBLICACAO.situacao_pagamento',2);    
        //$this->db->where('PUBLICACAO.situacao_publicacao',1);    
        $this->db->where('COAUTOR.publicacao',$idPublicacao);    
        $this->db->order_by('COAUTOR.ordem','ASC');
        return $this->db->get();        
    }
    public function buscaDadosPublicacao($idPublicacao)
    {   $this->db->select('*');
        $this->db->from('PUBLICACAO');
        //$this->db->join('COAUTOR', 'PARTICIPANTE.id_participante = COAUTOR.participante');
        //$this->db->join('PARTICIPANTE', 'PUBLICACAO.id_participante = PARTICIPANTE.id_participante');
        //$this->db->where('PARTICIPANTE.status_participante','P');
        //$this->db->where('PUBLICACAO.situacao_pagamento',2);    
        //$this->db->where('PUBLICACAO.situacao_publicacao',1);    
        $this->db->where('PUBLICACAO.id_publicacao',$idPublicacao);    
        //$this->db->order_by('PUBLICACAO.nome','ASC');
        return $this->db->get();        
    }
    
    public function buscaTodosParticipantesIntervalo($idParticipante)
    {   $this->db->where('status_participante','P');
       $this->db->where('id_participante',$idParticipante);
        $this->db->order_by('nome','ASC');
        return $this->db->get('PARTICIPANTE');        
    }
    
    public function buscaStatusInscricao($idParticipante)
    {   $this->db->select('*');
        $this->db->select("DATE_FORMAT(data_cadastro, '%d/%m/%Y às %H:%i:%s') as data", FALSE);
        $this->db->where('id_participante',$idParticipante);
        return $this->db->get('INSCRICAO');
    }
    public function buscaTodasPublicacoes()
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE PA');
        $this->db->join('PUBLICACAO PU', 'PA.id_participante = PU.id_participante');
        //$this->db->where('PA.status_participante','P');
        return $this->db->get();  
        
    }

    public function buscaStatusPublicacao($idParticipante)
    {   //$this->db->select('*');
        //$this->db->select("DATE_FORMAT(data_cadastro, '%d/%m/%Y às %H:%i:%s') as data", FALSE);
        $this->db->where('id_participante',$idParticipante);
        return $this->db->get('PUBLICACAO');
    }
    public function buscaPublicacao($idPublicacao)
    {   $this->db->select('*');
        $this->db->from('PARTICIPANTE PA');
        $this->db->join('PUBLICACAO PU', 'PA.id_participante = PU.id_participante');
        $this->db->where('PU.id_publicacao',$idPublicacao);
        return $this->db->get();        
    }
    public function gravarHorario($idPublicacao, $horario)
    {   $this->db->update('PUBLICACAO', array('horario_apresentacao' => $horario),array('id_publicacao'=>$idPublicacao)); 
        $this->session->set_flashdata('msg',"HORÁRIO ENVIADO COM SUCESSO!");
        redirect('administracao/areacontroller/marcarhorario/'.$idPublicacao);        
    }
            

    public function enviarDadosDeposito($idInscricao,$numeroDeposito)
    {   //$this->db->where('id_inscricao',$idInscricao);
        $this->db->update('INSCRICAO', array('numero_deposito' => $numeroDeposito),array('id_inscricao'=>$idInscricao)); 
        $this->session->set_flashdata('msg',"NÚMERO ENVIADO COM SUCESSO !!!");
        redirect('administracao/areacontroller');
    }
    public function enviarDadosDepositoPublicacao($idInscricao,$numeroDeposito)
    {   //$this->db->where('id_inscricao',$idInscricao);
        $this->db->update('PUBLICACAO', array('numero_deposito_publicacao' => $numeroDeposito),array('id_participante'=>$idInscricao)); 
        $this->session->set_flashdata('msg',"NÚMERO ENVIADO COM SUCESSO!");
        redirect('administracao/areacontroller');
    }  
    public function validarCertificado($codigo)
    {   //$codigo2 = 1234;
        $codigoTratado = $codigo;
        $this->db->where('chave',$codigoTratado);
        $this->db->or_where('chave2',$codigoTratado);
        $this->db->or_where('chave3',$codigoTratado);
        $this->db->or_where('chave4',$codigoTratado);
        return $this->db->get('PARTICIPANTE');        
    }
   
}